logs.tsx 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import { useParams } from 'common'
  2. import { LogsPreviewer } from '@/components/interfaces/Settings/Logs/LogsPreviewer'
  3. import DefaultLayout from '@/components/layouts/DefaultLayout'
  4. import EdgeFunctionDetailsLayout from '@/components/layouts/EdgeFunctionsLayout/EdgeFunctionDetailsLayout'
  5. import { useEdgeFunctionQuery } from '@/data/edge-functions/edge-function-query'
  6. import type { NextPageWithLayout } from '@/types'
  7. export const LogPage: NextPageWithLayout = () => {
  8. const { ref, functionSlug } = useParams()
  9. const { data: selectedFunction, isPending: isLoading } = useEdgeFunctionQuery({
  10. projectRef: ref,
  11. slug: functionSlug,
  12. })
  13. if (selectedFunction === undefined || isLoading) return null
  14. return (
  15. <div className="flex-1">
  16. <LogsPreviewer
  17. condensedLayout
  18. projectRef={ref as string}
  19. queryType="functions"
  20. filterOverride={{ 'metadata.function_id': selectedFunction.id }}
  21. />
  22. </div>
  23. )
  24. }
  25. LogPage.getLayout = (page) => (
  26. <DefaultLayout>
  27. <EdgeFunctionDetailsLayout title="Logs">{page}</EdgeFunctionDetailsLayout>
  28. </DefaultLayout>
  29. )
  30. export default LogPage